/*
  学习目标：枚举和字面量联合的区别：

  作用相似：表示一组可选的取值范围
  不同：
    1. 字面量联合，可以表示任意值的取值范围
    2. 枚举，只能表示数字或字符串的取值范围

  使用场景：
    1. 👍尽量使用字面量联合， 它更灵活，更容易扩展
    2. 在取值范围不会发变化时，也可以使用枚举
*/

type MyStatus = 'UnPase' | 'Pass' | 'Draft' | { name: 'UnPase' };
type MyStatus2 = { name: 'UnPase' } | { name: 'Pass' } | 'Draft';
type MyStatus3 = { name: 'UnPase' | 'Pass' | 'Draft' };

const obj: MyStatus3 = {
  name: 'UnPase',
};

enum Status {
  UnPass,
  Pass,
  Draft,
}

console.log('Status.UnPass  ----->  ', Status.UnPass);
